
/**
 * 题目：输入数组，最大的与第一个元素交换，最小的与最后一个元素交换，输出数组。
 */
#if 1
#include <stdio.h>
int main()
{
    int num[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
    int max = 0;
    int min = 0;
    max = num[0];
    min = num[0];
    int max_index = 0;
    int min_index = 0;
    // 找最大值
    for (int i = 1; i < 10; i++)
    {
        /* code */
        if (max < num[i])
        {
            /* code */
            max = num[i];
            max_index = i;
        }
    }

    // 找最小值
    for (int i = 1; i < 10; i++)
    {
        /* code */
        if (min > num[i])
        {
            /* code */
            min = num[i];
            min_index = i;
        }
    }

    if (min_index + 10 - 1 != max_index)
    {
        /* code */
        max = max + num[0];
        num[0] = max - num[0];
        num[max_index] = max - num[0];

        min = min + num[9];
        num[9] = min - num[9];
        num[min_index] = min - num[9];
    }
    else
    {
        max = max + num[0];
        num[0] = max - num[0];
        num[max_index] = max - num[0];
    }

    for (int i = 0; i < 10; i++)
    {
        /* code */
        printf("%d ", num[i]);
    }

    return 0;
}
#endif